package com.aliyun.product.client.service;

import javax.validation.constraints.Min;

import com.aliyun.commons.model.Result;
import com.aliyun.product.client.model.ProductDTO;
import org.springframework.validation.annotation.Validated;

/**
 * 商品服务
 *
 * 
 * @date 2024/11/27
 */
@Validated
public interface ProductService {

    /**
     * 按 ID 获取商品信息
     *
     * @param productId 商品 ID
     * @return {@link ProductDTO }
     */
    Result<ProductDTO> getProduct(@Min(value = 1, message = "商品ID无效") long productId);

    /**
     * 重置缓存
     *
     * @param productId 默认商品 ID
     * @return {@link Result }<{@link Void }>
     */
    Result<Void> resetCache(Long productId);
}